﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ServiceModel;
using System.IO;

namespace iLangl.Transport
{
	[MessageContract]
	public class UploadRequest
	{
		/// <summary>
		/// License Key
		/// </summary>
		[MessageHeader]
		public String LicenseKey
		{
			get;
			set;
		}

		/// <summary>
		/// Package Identifier
		/// </summary>
		[MessageHeader]
		public String PackageId
		{
			get;
			set;
		}

		/// <summary>
		/// Package Delivery FileName
		/// </summary>
		[MessageHeader]
		public String DeliveredFileName
		{
			get;
			set;
		}


		/// <summary>
		/// Stream containing data of the package.
		/// </summary>
		[MessageBodyMember]
		public Stream PackageData
		{
			get;
			set;
		}

		/// <summary>
		/// Size of the package.
		/// </summary>
		[MessageHeader]
		public Int64 PackageSize
		{
			get;
			set;
		}
	}
}
